package top.continew.admin.sport.service;

import top.continew.admin.sport.model.resp.ProjectEntryExcel;
import top.continew.starter.extension.crud.model.query.PageQuery;
import top.continew.starter.extension.crud.model.query.SortQuery;
import top.continew.starter.extension.crud.model.resp.PageResp;
import top.continew.starter.extension.crud.service.BaseService;
import top.continew.admin.sport.model.query.ProjectEntryQuery;
import top.continew.admin.sport.model.req.ProjectEntryReq;
import top.continew.admin.sport.model.resp.ProjectEntryDetailResp;
import top.continew.admin.sport.model.resp.ProjectEntryResp;

import java.util.List;

/**
 * 报名业务接口
 *
 * @author xiahaike
 * @since 2024/09/15 02:01
 */
public interface ProjectEntryService extends BaseService<ProjectEntryResp, ProjectEntryDetailResp, ProjectEntryQuery, ProjectEntryReq> {
    ProjectEntryResp getOneByUserId(ProjectEntryReq projectEntryReq);

    ProjectEntryResp getOneByTeamId(ProjectEntryReq projectEntryReq);

    PageResp<ProjectEntryResp> myPage(ProjectEntryQuery projectEntryQuery, PageQuery pageQuery);

    List<ProjectEntryExcel> myList(ProjectEntryQuery query, SortQuery sortQuery);
}